import { userLoginApi } from '@/api/user'
// 用户状态
export default {
  // vue3中，模块中的state，需要通过箭头函数提供，返回值就是state状态
  // 独立命名空间
  namespaced: true,
  // 用户模块数据
  state: () => {
    return {
      profile: {
        id: '',
        name: '',
        token: ''
      }
    }
  },
  mutations: {
    // 设置用户信息
    setProfile (state, newProfile) {
      state.profile = newProfile
    },
    // 清空用户信息
    clearProfile (state) {
      state.profile = {
        id: '',
        nickname: '',
        token: '',
        avatar: '',
        mobile: ''
      }
    }
  },
  actions: {
    // 用户登录
    async login (store, loginInfo) {
      const { result } = await userLoginApi(loginInfo)
      store.commit('setProfile', result)
    }
  }
}
